# 编写函数rand_password，生成指定长度的随机密码，要求密码中至少包含大小写字母、数字
# 传递一个指定长度的数字
# 生成随机：通过random.choice
# 最后将每次生成的随机字符串拼接起来，返回出去
# 调用函数 rand_password(8)
import random
import string
# print(string.ascii_letters, string.digits)
def rand_password(n=8):
    # 声明变量，用于保存生成的随机字符，初始化为空字符串
    rand_str = ''
    # 确定随机范围
    chars = string.ascii_letters + string.digits
    # 循环获取一个随机字符
    for i in range(n):
        s = random.choice(chars)
        # print(s)
        # 把每次生成的随机字符拼接到 rand_str 中
        rand_str += s
    # 返回随机字符串
    return rand_str
# 属于测试的代码，不需要在别的模块中执行
# 模块中提供一个预定义变量__name__
# 当前模块执行运行  '__main__'
# 在其它模块导入运行： 'test01_func'
# print('__name__：', __name__)
# 如果在当前模块下运行，则执行下面的代码
# main  点击tab
if __name__ == '__main__':
    print('当前模块执行运行')
    s1 = rand_password(6)
    print(s1)
    print(rand_password(10))
    print(rand_password())

